use crate::tool::Tool;
use tool_macro::tool;
use serde_json::{json, Value};
use anyhow::{Context, Result};
use async_trait::async_trait;

#[tool(
    struct_name = Terminator,
    name = "terminate",
    description = "Answer the user's question, and terminate the conversation.",
    args = [
        "answer" : {
            "type": "string",
            "description": "Answer to the user's question.",
        }
    ]
)]
fn terminate(answer: &str) -> String {
    answer.to_string()
}